home *** CD-ROM | disk | FTP | other *** search
- alsa-utils README.Debian
- ------------------------
-
- Contents
- --------
- News
- Restoring mixer levels
- Storing mixer levels
- Error messages
-
-
- News
- ----
- Last updated 20 July 2005
-
-
- Restoring mixer levels
- ----------------------
- ALSA drivers initialize hardware mixer levels to zero. It is usually
- desirable to set things up so that the mixer levels for basic sound
- output are automatically raised to reasonable levels after the drivers
- have completed their initialization.
-
- Currently, alsa-utils accomplishes this by having its initscript's
- "start" method restore mixer levels to what they were the last time
- they were saved (see below). The levels are stored in the file
- /var/lib/alsa/asound.state. If either the latter file or the alsactl
- program is not available then amixer is used to set mixer levels to
- "reasonable" default values.
-
- To set mixer levels to "reasonable" default values from the command
- line (i.e., without trying first to restore saved values), run
- "/etc/init.d/alsa-utils reset".
-
- For modular drivers on a udev system, the /lib/alsa/udev script runs
- the initscript "start" method after a driver has initialized and its
- associated control device has been created.
-
- For modular drivers on a non-udev system, if alsa-base is installed
- then the script /etc/alsa/modprobe-post-install.d/alsa-utils runs the
- initscript "start" method after any sound card driver module has
- finished loading.
-
- For integral drivers and modular ones loaded very early in the boot
- process, the initscript is configured to be run as part of runlevel
- initialization. Restoration of mixer levels on bootup can be disabled
- by configuring the alsa-utils "service" as stopped in runlevel S. On a
- system that uses sysv-rc this means that you should RENAME
- /etc/rcS.d/S50alsa-utils to /etc/rcS.d/K50alsa-utils. The symlink
- should not be deleted---only renamed.
-
-
- Storing mixer levels
- -------------------------
- By default mixer levels are stored before shutdown by the initscript's
- "stop" method. The initscript is run with "stop" in runleves 0 and 6.
-
- To disable this behavior, if you are using sysv-rc, REMOVE the
- "K50alsa-utils" symbolic links from /etc/rc0.d/ and /etc/rc6.d/.
- The symlinks should be removed, not just renamed.
-
- Note that this scheme is different from and simpler than the scheme
- that was used by the "alsa" initscript when it contained the code
- that implemented mixer level storing and restoring. The runlevels_save
- environment variable is no longer used---indeed, there is no
- /etc/default/ file for alsa-utils at all---and there is no longer a
- choice of values for "alsactl_store_on_shutdown". Now "alsactl store"
- is run on shutdown unconditionally; however, this can be disabled by
- configuring the alsa-utils "service" as floating in runlevels 0 and 6,
- as described above.
-
-
- Error messages
- --------------
- If the initscript "start" method is run early in the boot process,
- before /usr/ is mounted, then it may print an error message. The
- message can be ignored because the initscript gets run again later in
- the boot process.
-
- /etc/init.d/alsa-utils: Warning: No alsactl program available.
-
- If you use the snd-cs46xx module then you may see messages like this:
-
- Jan 26 14:32:50 foo kernel: ALSA ../../alsa-kernel/pci/cs46xx/cs46xx_lib.c:427: cs46xx: failure waiting for FIFO command to complete
-
- This arises from a bug in the driver, but so far I have yet to
- observe any consequent malfunction in the sound card.
-